package com.yindong.tabbar.bottom;

/**
 * 导航监听接口
 *
 * @author      殷冬
 * @date        2021-01-19
 * @version     1.0.0
 */
public interface NavigationListener<T> {

    /**
     * 添加监听导航内容监听
     *
     * @param listener
     */
    void addBarSelectedChangeListener(OnBarSelectedListener<T> listener);

    interface OnBarSelectedListener<T>{

        /**
         * 导航内容点击事件
         *
         * @param nextIndex                     点击的导航栏内容坐标
         * @param nextTabBarInfoModel           点击的导航栏内容的对象
         * @param currentTabBarInfoModel        当前导航栏内容对象
         */
        void onBarSelectedChange(Integer nextIndex, T nextTabBarInfoModel, T currentTabBarInfoModel);
    }
}
